package org.yenn.proxy.jdkproxy;

import lombok.AllArgsConstructor;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;

@AllArgsConstructor
public class LogHandler implements InvocationHandler {

	private Object target;

	/*
	 * 参数：
	 * proxy  被代理对象
	 * method  被代理对象的方法
	 * args 方法的参数
	 * 返回值：
	 * Object  方法的返回值
	 * */
	@Override
	public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
		System.out.println("日志开始....");
		Object invoke = method.invoke(target);
		System.out.println("日志结束....");
		return invoke;
	}

}
